热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

驼峰|新和_小公司的前端建设的一些思考

篇首语:本文由编程笔记#小编为大家整理,主要介绍了小公司的前端建设的一些思考相关的知识,希望对你有一定的参考价值。 在之前的企业项目开发中,做过一些前端基础建设和项目

篇首语:本文由编程笔记#小编为大家整理,主要介绍了小公司的前端建设的一些思考相关的知识,希望对你有一定的参考价值。



在之前的企业项目开发中,做过一些前端基础建设和项目推进的工作。

完成项目之后,一直没时间整理和反思在推进过程中,遇到的问题以及解决方案,由于前端团队人员较少,更多的是多人协作以及大家共同攻克一些问题。

工具

前端的编辑器,包括sublime,还有vscode,以及webstorm、atom这类编辑器,发展到现在,vscode成为了目前前端开发的主流编辑器
在团队开发过程中,针对一些固定的插件,需要实现规范和统一。

包括:

tab缩进的大小,以及格式化的插件,例如在vue开发过程中,推荐使用Vetur进行格式化和代码约束,包括代码检查eslint这些工具。

除了统一使用的插件作为规范以外,其他的插件作为个人爱好和习惯使用即可。


项目结构目录

文件夹划分

以vue开发为例:接口api,路由router,状态管理store,组件compoment、工具类utils,建议统一划分到各自的文件夹,明确文件夹的功能,文件命名规范可以参照:​​vue官方文档-风格指南​​

文件夹命名可以根据习惯,最重要的是要明确划分功能,确保在开发过程中造成目录混乱


代码编写

Javascript

  • 常量大写,规范使用let和const等命令, 变量和方法使用 驼峰or下划线进行命名,
  • 工具类utils和依赖包方法,例如:时间格式化YYYY-MM-DD,统一使用utils中的格式化方法
  • 深拷贝或者节流防抖等方法,根据项目场景封装或者使用lodash,进行统一,混合使用容易增加开发成本。

html&&css

类名使用驼峰或者以 - 作为连接,书写顺序建议以参考​​腾讯css书写规范​​


git

  • 默认一条主分支,这个应该是大家在代码维护过程中的共识了
  • 在项目完成第一次上线之后,建议增加一条fix分支作为生产环境bug维护的分支
  • 开发过程中,dev分支的提交,提交信息应该详细且最好是按照提交的类型,是否是fix还是update代码

协作开发

在开发过程中,项目的进度和周期情况都不太一样,同时有些前端开发人员可能是刚进入项目,也有些在项目中呆了比较久,能力也会有所差别,在开发和分配任务时,就需要根据不同的情况进行分配任务。

需要考虑的问题

  • 是否根据个人能力的强弱,分配任务的时候,注重培养还是按照个人擅长的领域去处理擅长的问题。
  • 业务组件和公共组件的编写,是根据分配任务的模块划分还是由某个同学单独去完成
  • 更多问题。。。

文档以及注释

  • 项目的readme.md建议尽可能地完善,不仅仅局限于 安装npm依赖和启动,更应该包含上面所提到:插件规范、一些重要的依赖项、node版本等
  • 代码注释建议保持良好的习惯,包括代码块注释,业务逻辑注释,实现痛点等

前端负责人

  • 作为前端的负责人,需要结合业务需求,做更好的技术选型,对于现有的工具有一定的了解和知识广度
  • 良好的编码基础支持作为支撑,熟悉前端项目架构,具备前端开发的技能,面对业务开发能够熟练于心,对算法有一定的能力和理解,对前端领域的技术更新和信息有良好的敏感度
  • 具有一定的管理能力,保持团队的活力,提升整个团队的战斗能力,建议可以开展一些技术分享或者讨论,引导前端团队的成员去攻克一些难题,善于发现他们的闪光点。
  • 不管是针对前端成员还是其他同事或者上级,拥有良好的沟通和理解能力,快速定位问题,进行有效沟通。

写在最后

以上就是关于小公司前端团队建设的一些思考,2022年的前端,希望各位前端开发的同学,都能找到属于自己的一片天地。
文章个人博客地址:​​小公司的前端建设的一些思考​​

创作不易,转载请注明出处和作者。


推荐阅读
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • VueCLI多页分目录打包的步骤记录
    本文介绍了使用VueCLI进行多页分目录打包的步骤,包括页面目录结构、安装依赖、获取Vue CLI需要的多页对象等内容。同时还提供了自定义不同模块页面标题的方法。 ... [详细]
  • 本文介绍了一个免费的asp.net控件,该控件具备数据显示、录入、更新、删除等功能。它比datagrid更易用、更实用,同时具备多种功能,例如属性设置、数据排序、字段类型格式化显示、密码字段支持、图像字段上传和生成缩略图等。此外,它还提供了数据验证、日期选择器、数字选择器等功能,以及防止注入攻击、非本页提交和自动分页技术等安全性和性能优化功能。最后,该控件还支持字段值合计和数据导出功能。总之,该控件功能强大且免费,适用于asp.net开发。 ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • Unity3D引擎的体系结构和功能详解
    本文详细介绍了Unity3D引擎的体系结构和功能。Unity3D是一个屡获殊荣的工具,用于创建交互式3D应用程序。它由游戏引擎和编辑器组成,支持C#、Boo和JavaScript脚本编程。该引擎涵盖了声音、图形、物理和网络功能等主题。Unity编辑器具有多语言脚本编辑器和预制装配系统等特点。本文还介绍了Unity的许可证情况。Unity基本功能有限的免费,适用于PC、MAC和Web开发。其他平台或完整的功能集需要购买许可证。 ... [详细]
  • npmrunbuild后dist文件夹下面直接浏览器打开index.html,css和js的路径都不正确。放到跟目录下就正常了,iis上同样只能在根目录下。我项目的目录如下: ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
author-avatar
mobiledu2502869373
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有